﻿using System;
using System.Collections.Generic;

namespace ZZQFrameWork.AI
{
    /// <summary>
    /// AI状态
    /// </summary>
    public class AIState
    {
        public static string THINK_STATE = "THINK_STATE";//思考中
        public static string IDLE_STATE = "IDLE_STATE";//空闲中
        public static string MOVE_STATE = "MOVE_STATE";//移动中
        public static string FIGHT_STATE = "FIGHT_STATE";//战斗中
        public static string FIGHT_CD_STATE = "FIGHT_CD_STATE";//战斗CD
        public static string DEATH_STATE = "DEATH_STATE";//死亡
    }

    ///// <summary>
    ///// AI事件
    ///// </summary>
    //public enum Enum_AIEvent
    //{
    //    MoveEnd=1,
    //    RoleDie,
    //    BeHit,
    //}

    public class BlackBoard
    {
        public string AIState = AI.AIState.IDLE_STATE;//AI当前状态
        //public Enum_AIEvent AIEvent=Enum_AIEvent.CDEnd;//AI当前事件

        public UnityEngine.GameObject Enemy = null;//敌人id，null为没有敌人
        public bool HasPathList = false;//是否有寻路路径
        public int NowSkillId = 0;//当前释放的技能id，0为没有释放技能
        public int NeedSkillId = 0;//将要释放的技能id，0为没有需要释放的技能

        /// <summary>
        /// 改变AI状态
        /// </summary>
        /// <param name="newState"></param>
        public void ChangeAIState(string newState)
        {
            AIState = newState;
        }

        ///// <summary>
        ///// 改变AI事件
        ///// </summary>
        ///// <param name="newEvent"></param>
        //public void ChangeAIEvent(Enum_AIEvent newEvent)
        //{
        //    AIEvent = newEvent;
        //}
    }
}
